﻿#ifndef CModelMange_H
#define CModelMange_H
/********************************************************************************
** @ Date:2025/04/17
** @ Author: HanJiaXin
** @ Description:驱动模块管理类,包含设备控制、界面、业务逻辑、测点管理
** @ Version:1.0.0
** @ ClassName:
** @ Fun:
********************************************************************************/
#include <QObject>
#include "CDevBeltRealign.h"
#include "Header.h"

class CModelMange  : public QObject
{
	Q_OBJECT

public:
	CModelMange(QString sDevGuid,QString sDevName,bool& bRet);
	~CModelMange();

	bool startDev();//开启设备
	void stopDev();//停止设备
	QWidget* getConfigWidget();						//获取设备配置界面
	QWidget* createWidget(EWidgetType enWidgetType);//创建界面
	QWidget* getDeviceRunUi();						//获取主界面
	bool ctrDev(SCtrInfo stCtrInfo);				//控制设备
	QList<CMeasurePoint*> getMeasurePoints();		//获取测点列表
	QString getDeviceStatus();						//获取设备状态
	QVector<QWidget*> getDeviceUiList();			//获取设备缩略图界面列表
	QMap<QString, QString> getInputPointList();		//获取设备输入测点列表
	void setInputPointList(QMap<QString, CMeasurePoint*>vecInputPoint);// 设置设备输入测点列表
	void deleteDev(QString sDevID);

private:
	void initCfg();//读取配置文件

public:
	QString m_sDevGuid;
	QString m_sDevName;
	CDevBeltRealign* m_pDev;//设备类
};
#endif // !CDevMange_H